
--metatable的__ index域是函数
local mt = setmetatable({}, {
    __index =
    function(t, k)
        print("1111")
    end
})
--在访问一个table的缺省域的时候，如果该table有metatable，并且__ index域是个函数，
--那么直接调用它，不管tbl的metatable的metatable是否存在，存在的话__ index域是什么，
--它都只调用tbl的metatable的__index函数
mt.__index = function(t, k)
    print("2222")
end
local tbl = setmetatable({}, mt)
print(tbl.hello)

--[[
    2222
    nil
]]